﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>

using namespace std;


//链表求和
//https://leetcode.cn/problems/sum-lists-lcci/

// int ListLength(struct ListNode* head)
// {
    // if (head == NULL)
        // return 0;

    // return ListLength(head->next) + 1;
// }

// struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l2)
// {
    // if (!l1 && l2)//只有一个链表
    // {
        // return l2;
    // }
    // else if (l1 && !l2)
    // {
        // return l1;
    // }
    // else if (!l1 && !l2)//两个都是空链表
    // {
        // return NULL;
    // }

    // int l1dep = ListLength(l1);
    // int l2dep = ListLength(l2);
    // if (l1dep < l2dep)
    // {
        // int dep = l1dep;
        // l1dep = l2dep;
        // l2dep = dep;
        // struct ListNode* tmp = l1;
        // l1 = l2;
        // l2 = tmp;
    // }
    // struct ListNode* l=l1;//记录表头
    // int pos = 0;//记录进位
    // while(l1 && l2)
    // {
        // (l1->val) += ((l2->val) + pos);
        // if (l1->val > 9)
        // {
            // l1->val %= 10;
            // pos = 1;
        // }
        // else
        // {
            // pos = 0;
        // }

        // if(!l1->next && pos==1)//最后一个节点就行单独判断,检查最高位是否大于10，加一个节点
        // {
            // struct ListNode* node = (struct ListNode*)malloc(sizeof(struct ListNode));
            // node->val=1;
            // node->next=NULL;
            // l1->next=node;
            // l1=NULL;
            // break;
        // }
        
        // l1=l1->next;
        // l2=l2->next;
    // }

    // while(l1)//如果长链表没走完就继续走完
    // {
        // (l1->val) +=  pos;
        // if (l1->val > 9)
        // {
            // l1->val %= 10;
            // pos = 1;
        // }
        // else
        // {
            // pos = 0;
        // }
        // if(!l1->next && l1->val > 9 ||!l1->next && pos == 1)//最后一个节点就行单独判断,检查最高位是否大于10，加一个节点
        // {
            // struct ListNode* node = (struct ListNode*)malloc(sizeof(struct ListNode));
            // node->val=1;
            // l1->val %= 10;
            // node->next=NULL;
            // l1->next=node;
            // break;
        // }
        // l1=l1->next;
    // }
    
    // return l;
// }


//括号的最大嵌套深度
//https://leetcode.cn/problems/maximum-nesting-depth-of-the-parentheses/
// int maxDepth(char* s)
// {
    // int strnum = strlen(s);
    // int i = 0;
    // int depmax = 0;
    // int dep = 0;
    // while (i < strnum)
    // {
        // if(s[i]=='(')
        // {
            // dep++;
        // }
        // else if(s[i]==')')
        // {
            // dep--;
        // }
        // if (depmax < dep)
        // {
            // depmax = dep;
        // }
        // ++i;
    // }
    // return depmax;
// }